
package com.google.code.lebar.bean.response.animation;


import com.google.code.lebar.bean.common.Point3;


public class BasicAnimation implements Cloneable
{
    private String type;
    private Integer length;
    private Integer delay;
    private Double interpolationParam;
    private String interpolation;
    private Boolean persist;
    private Boolean repeat;
    private Double from;
    private Double to;
    private Point3 axis;
    
    @Override
    public BasicAnimation clone()
    {
        BasicAnimation tClonedBasicAnimation = new BasicAnimation();
        tClonedBasicAnimation.setAxis( getAxis().clone() );
        tClonedBasicAnimation.setDelay( getDelay() );
        tClonedBasicAnimation.setFrom( getFrom() );
        tClonedBasicAnimation.setInterpolation( getInterpolation() );
        tClonedBasicAnimation.setInterpolationParam( getInterpolationParam() );
        tClonedBasicAnimation.setLength( getLength() );
        tClonedBasicAnimation.setPersist( getPersist() );
        tClonedBasicAnimation.setRepeat( getRepeat() );
        tClonedBasicAnimation.setTo( getTo() );
        tClonedBasicAnimation.setType( getType() );
        
        return tClonedBasicAnimation;
    }

    /**
     * @return the type
     */
    public String getType()
    {
        return type;
    }

    /**
     * @return the length
     */
    public Integer getLength()
    {
        return length;
    }

    /**
     * @return the delay
     */
    public Integer getDelay()
    {
        return delay;
    }

    /**
     * @return the interpolationParam
     */
    public Double getInterpolationParam()
    {
        return interpolationParam;
    }

    /**
     * @return the interpolation
     */
    public String getInterpolation()
    {
        return interpolation;
    }

    /**
     * @return the persist
     */
    public Boolean getPersist()
    {
        return persist;
    }

    /**
     * @return the repeat
     */
    public Boolean getRepeat()
    {
        return repeat;
    }

    /**
     * @return the from
     */
    public Double getFrom()
    {
        return from;
    }

    /**
     * @return the to
     */
    public Double getTo()
    {
        return to;
    }

    /**
     * @return the axis
     */
    public Point3 getAxis()
    {
        return axis;
    }

    /**
     * @param type
     *            the type to set
     */
    public void setType( String type )
    {
        this.type = type;
    }

    /**
     * @param length
     *            the length to set
     */
    public void setLength( Integer length )
    {
        this.length = length;
    }

    /**
     * @param delay
     *            the delay to set
     */
    public void setDelay( Integer delay )
    {
        this.delay = delay;
    }

    /**
     * @param interpolationParam
     *            the interpolationParam to set
     */
    public void setInterpolationParam( Double interpolationParam )
    {
        this.interpolationParam = interpolationParam;
    }

    /**
     * @param interpolation
     *            the interpolation to set
     */
    public void setInterpolation( String interpolation )
    {
        this.interpolation = interpolation;
    }

    /**
     * @param persist
     *            the persist to set
     */
    public void setPersist( Boolean persist )
    {
        this.persist = persist;
    }

    /**
     * @param repeat
     *            the repeat to set
     */
    public void setRepeat( Boolean repeat )
    {
        this.repeat = repeat;
    }

    /**
     * @param from
     *            the from to set
     */
    public void setFrom( Double from )
    {
        this.from = from;
    }

    /**
     * @param to
     *            the to to set
     */
    public void setTo( Double to )
    {
        this.to = to;
    }

    /**
     * @param axis
     *            the axis to set
     */
    public void setAxis( Point3 axis )
    {
        this.axis = axis;
    }
}
